1. Technical Field
This disclosure relates generally to probe-based data storage devices, and more particularly to methods and apparatus enabling overwriting of data in such devices whereby data can be stored without first erasing previously-written data.
2. Discussion of the Related Art
In probe-based data storage devices, stored data is represented on a storage surface by the presence and absence of indentations, or “pits”, which are formed in the surface by a probe of the device. For example, in AFM (Atomic Force Microscope)-based storage devices, the probe is a nanometer-sharp tip mounted on the end of a microfabricated cantilever. This tip can be moved over the surface of a storage medium in the form of a polymer substrate. A mechanism is provided for heating the tip, and thus the polymer surface at the point of contact with the tip, allowing the tip to penetrate the surface to create a pit. Such a pit typically represents a bit of value “1”, a bit of value “0” being represented by the absence of a pit at a bit position on the storage surface. In a read-scan mode, the thermomechanical probe mechanism can be used to read-back data by detecting the deflection of the cantilever as the tip is moved over the pattern of bit indentations. AFM-based data storage is described in detail in IBM Journal of Research & Development, Volume 44, No. 3, May 2000, pp323-340, “The ‘Millipede’—More Than One Thousand Tips for Future AFM Data Storage”, Vettiger et al., and the references cited therein. As described in this document, while basic read/write operations can be implemented using a single cantilever probe, in practice an integrated array of individually-addressable cantilevers is employed in order to increase data rates. Each cantilever of the array can read and write data within its own storage field as the array is moved relative to the storage surface.
Overwriting of data in probe-based data storage devices is problematical. For example, if a zero corresponds to “no pit” at a bit position, writing a zero at a bit position corresponds to no action. Hence, “writing” a zero over a previously-written “1” at a bit position will leave the old “1” in tact, rendering the newly-written data incorrect. Prior systems have thus required old data to be erased before new data can be written on the storage surface. For example, in the Millipede device discussed above, old data can be erased by heating the storage surface to cause melting and “reflow” of the polymer. This requirement for erasing old data prior to writing has adverse implications for both power consumption and operating speed.
Systems which allow direct overwriting of old data with new data in probe-based data storage devices have been disclosed in our copending European Patent Application No. 02010648.0, filed 13 May 2002. Aspects of these systems were also discussed in “The Role of Signal Processing and Coding in Data Storage: State of the Art and Future Trends”, E. Eleftheriou, IEEE Communications Theory Workshop 2002, Sanibeli Island, Fla., May 19-22, 2002. Overwriting is achieved in these systems by applying an input data coding process and exploiting the physical mechanism of the write process. In particular, when a pit is written on the storage surface, material is displaced by the probe and deposited in the surrounding area. In the Millipede device discussed above for example, melted polymer is deposited in the area around a pit creating “donut walls”, or “rings”, which have a higher topological profile than the polymer background. If a pit is formed sufficiently near to an existing pit, the existing pit can be at least partially filled due to the material deformation, effectively changing a “1” to a “0” and thus erasing the “1”. This phenomenon therefore imposes a limit Tmin on the smallest distance between pits to be recorded on the storage surface. By employing an input data coding process, the systems disclosed in our European Application No. 02010648.0 exploit this phenomenon to achieve direct overwriting of data. The input data coding is effectively a two-stage process. In the first stage, input data is coded to prevent occurrence of two consecutive bits of a given value “x” in the coded input data. If x=1 for example, then the coding ensures that successive “1's” in the coded input data are separated by at least “d” zeros, where d is a predetermined number 1. The effect of this coding is to ensure that successive pits to be left in the storage surface after a write operation are always separated by at least one “no-pit”. This coding therefore allows the recorded bit density to be increased over the uncoded case where the minimum bit spacing is constrained to Tmin. In the second coding stage, an algorithm is employed to generate an overwrite bit sequence from the coded input bit sequence. In simple terms, the algorithms employed here are based on the premise that writing a pit can erase an existing, neighboring pit on either side of the new pit due to deformation of material as discussed above. When the resulting overwrite bit sequence is written on the storage surface, the effect is to record either the original coded input bit sequence, or the complement of this bit sequence, depending on particular operating parameters. This result is independent of the bit values of the old data which is overwritten, and hence erasing of old data is not required.
In a development of the above overwrite techniques, our copending European Patent Application No. 02405541.0, filed 27 Jun. 2002, discloses systems which enable overwriting to be achieved with reduced power consumption. These systems use an initial coding stage in which the number d is 2, and the higher recorded bit density permitted by this coding is then specifically exploited. Overwrite sequences are generated and written on the storage surface, with a bit spacing such that writing a pit at a bit position can erase an existing pit within d neighboring bit positions. The process for generating the overwrite sequences again ensures that the result of an overwrite operation is to record either the original coded input bit sequence, or its complement, regardless of the bit values of the data overwritten.